import request from '@/utils/request'
import { projectApiUrl } from '../config'
/**
 * 项目列表
 * @param parameter
 */
export function getProjectsList(parameter) {
  return request({
    url: projectApiUrl + '/projects/list',
    method: 'post',
    data: parameter
  })
}

/**
 * 专业项目列表
 * @param parameter
 */
export function getProSubProjectsList(parameter) {
  return request({
    url: projectApiUrl + '/projects/pro-sub-project/list',
    method: 'post',
    data: parameter
  })
}

/**
 * 历史项目列表
 * @param parameter
 */
export function getHistoryProjectsList(parameter) {
  return request({
    url: projectApiUrl + '/projects/project_history_list/list',
    method: 'post',
    data: parameter
  })
}
// /**
//  * 历史项目列表
//  * @param parameter
//  */
// export function getHistoryProjectsList(parameter) {
//   return request({
//     url: projectApiUrl + '/projects/project_history_list',
//     method: 'get',
//     params: parameter
//   })
// }

/**
 * 历史项目组织结构
 * @param parameter
 */
export function getHistoryTree(parameter) {
  return request({
    url: projectApiUrl + '/project-common/query_history_project_tree',
    method: 'post',
    data: parameter
  })
}


/**
 * 项目详情
 * @param parameter
 */
export function getProjectsDel(parameter) {
  return request({
    url: projectApiUrl + '/projects/details',
    method: 'get',
    params: parameter
  })
}


/**
 * 项目部设置保存
 * @param parameter
 */
export function addDepartmentConfig(data) {
  return request({
    url: projectApiUrl + '/projects/department-config',
    method: 'post',
    data: data
  })
}

/**
 * 项目删除接口
 * @param parameter
 */
export function deleteProject(data) {
  return request({
    url: projectApiUrl + '/projects/delete',
    method: 'post',
    data: data
  })
}



/**
 * 项目部设置保存
 * @param parameter
 */
export function addDepartmentConfigs(data) {
  return request({
    url: projectApiUrl + '/projects/department-config/update',
    method: 'post',
    data: data
  })
}

/**
 * 安装分公司立项保存
 * @param parameter
 */
export function editBranchInfo(data) {
  return request({
    url: projectApiUrl + '/projects/branchProject-basicInfo/update',
    method: 'post',
    data: data
  })
}

/**
 * 安装分公司立项保存
 * @param parameter
 */
export function editCatagoryInfo(data) {
  return request({
    url: projectApiUrl + '/projects/category',
    method: 'post',
    data: data
  })
}


/**
 * 项目列表_安装分公司
 * @param parameter
 */
export function getInstallationBranch(parameter) {
  return request({
    url: projectApiUrl + '/projects/installation-branch',
    method: 'get',
    params: parameter
  })
}

/**
 * 项目设置列表
 * @param parameter
 */
export function getDepartConfig(parameter) {
  return request({
    url: projectApiUrl + '/projects/department-config',
    method: 'get',
    params: parameter
  })
}

/**
 * 项目业态
 * @param parameter
 */
export function getProjectFrom(parameter) {
  return request({
    url: projectApiUrl + '/projects/project-form',
    method: 'get',
    params: parameter
  })
}


/**
 * 项目列表_安装分公司
 * @param parameter
 */
export function getInstallationBranchId(projectInstallationBranchId) {
  return request({
    url: projectApiUrl + '/projects/installation-branch/' + projectInstallationBranchId,
    method: 'get',
    projectInstallationBranchId
  })
}

/**
 * 获取实施单位（所属三级单位、所属二级单位）
 * @param parameter
 */
export function getImCompany(level) {
  return request({
    url: projectApiUrl + '/projects/implementation-company/3',
    method: 'get',
    data: level
  })
}


/**
 * 获取省份下的管理机构信息
 * @param parameter
 */
export function getRegions(provincesCode) {
  return request({
    url: projectApiUrl + '/projects/' + provincesCode + '/regional-authority',
    method: 'get',
    provincesCode
  })
}


/**
 * 项目列表_设计管理中心
 * @param parameter
 */
export function getDesignCenter(parameter) {
  return request({
    url: projectApiUrl + '/projects/design-management-center',
    method: 'get',
    params: parameter
  })
}




/**
 * 获取项目立项基本字典
 *
 */
export function getDataDicts(parameter) {
  return request({
    url: projectApiUrl + '/projects/data-dicts',
    method: 'get',
    params: parameter
  })
}


/**
 * 项目状态修改
 * @param parameter
 */
export function getProjectsOne(customerId) {
  return request({
    url: projectApiUrl + '/projects/importanttypes/' + { customerId },
    method: 'get',
  })
}

/**
 * 新增项目--基本信息
 * @param data
 */
export function addProjectsInfo(data) {
  return request({
    url: projectApiUrl + '/projects',
    method: 'post',
    data: data
  })
}

/**
 * 新增项目--项目部设置
 * @param data
 */
export function addProjectsDepartment(data) {
  return request({
    url: projectApiUrl + '/projects/department',
    method: 'post',
    data: data
  })
}

/**
 * 获取区域一级管辖单位
 * @param data
 */
export function getUnitOne(data) {
  return request({
    url: projectApiUrl + '/projects/unit-one',
    method: 'get',
    data: data
  })
}

/**
 * 获取区域二级管辖单位
 * @param data
 */
export function getUnitTwo(data) {
  return request({
    url: projectApiUrl + '/projects/unit-two',
    method: 'get',
    data: data
  })
}


/**
 * 实施单位(所属三级单位)
 * @param data
 */
export function getImplementation(data) {
  return request({
    url: projectApiUrl + '/projects/implementation-unit',
    method: 'get',
    data: data
  })
}


/**
 * 实施单位(所属二级单位)
 * @param data
 */
export function getTwoImplementation(level) {
  return request({
    url: projectApiUrl + '/projects/implementation-company/' + level,
    method: 'get',
  })
}

/**
 * 区域信息
 * @param data
 */
export function getAreadicts(data) {
  return request({
    url: projectApiUrl + '/projects/area-dicts',
    method: 'get',
    params: data
  })
}


/**
 * 区域信息
 * @param data
 */
export function getProjectManager(data) {
  return request({
    url: projectApiUrl + '/projects/project-manager',
    method: 'get',
    data: data
  })
}

/**
 * 获取项目编号
 * @param data
 */
export function getProjectNum(data) {
  return request({
    url: projectApiUrl + '/projects/project-num',
    method: 'get',
    data: data
  })
}


/**
 * 查询客户信息数据字典
 * @param data
 */
export function getCustomerDicts(data) {
  return request({
    url: projectApiUrl + '/projects/customer-dicts',
    method: 'get',
    params: data
  })
}

/**
 * 项目设计类型
 * @param data
 */
export function getDesignType(data) {
  return request({
    url: projectApiUrl + '/projects/project-design-type',
    method: 'get',
    data: data
  })
}


/**
 * 获取当前登录人分公司信息
 * @param data
 */
export function getUserBranch(data) {
  return request({
    url: projectApiUrl + '/projects/user-branch',
    method: 'get',
    data: data
  })
}

/**
 * 获取当前登录人所在分公司参与的项目信息
 * @param data
 */
export function getUserProject(branchId) {
  return request({
    url: projectApiUrl + '/projects/user-branch-project/' + branchId,
    method: 'get',
    branchId
  })
}

/**
 * 获取当前登录人所在分公司参与的项目信息
 * @param data
 */
export function getJobStaff(projectId) {
  return request({
    url: projectApiUrl + '/projects/job-staff-Statistical/' + projectId,
    method: 'get',
    projectId
  })
}


/**
 * 文件查询
 * @param parameter
 */
export function getUploadFile(id) {
  return request({
    url: projectApiUrl + '/file/business/project-fileQuery',
    method: 'get',
    params: id
  })
}

/**
 * 文件删除
 * @param parameter
 */
export function deleteUploadFile(data) {
  return request({
    url: projectApiUrl + '/file/business/project-fileDelete',
    method: 'post',
    data: data
  })
}



/**
 * 项目业态下拉搜索
 * @param parameter
 */
export function getProjectList(data) {
  return request({
    url: projectApiUrl + '/construction/wbstemplate/project-list',
    method: 'get',
    params: data
  })
}

/**
 * 项目类别（质量）
 * @param parameter
 */
export function getProjectTypes(data) {
  return request({
    url: projectApiUrl + '/projects/project-type',
    method: 'get',
    params: data
  })
}
/**
 * 项目类别（质量）
 * @param parameter
 */
export function getProjectTypesFindIds(data) {
  return request({
    url: projectApiUrl + '/projects/project-type/find/ids',
    method: 'post',
    data
  })
}


/**
* 查询人员具体公司 岗位信息
* @param parameter
*/
export function getJobEmployee(data) {
  return request({
    url: projectApiUrl + '/project-common/project-job-employee',
    method: 'post',
    data: data
  })
}

/**
* 删除草稿状态的项目
* @param parameter
*/
export function deleteProjects(data) {
  return request({
    url: projectApiUrl + '/projects/delete',
    method: 'post',
    data: data
  })
}

/**
*  项目部统计
* @param parameter
*/
export function getProjectTotal(data) {
  return request({
    url: projectApiUrl + '/projects/total/list',
    method: 'post',
    data
  })
}

/**
 *  分包项目部统计
 * @param parameter
 */
export function getProSubProjectTotal(data) {
  return request({
    url: projectApiUrl + '/projects/statistics/list',
    method: 'post',
    data
  })
}

/**
*  项目人员调整不可用
* @param parameter
*/
export function getNotConcurrentlyPeople(data) {
  return request({
    url: projectApiUrl + '/projects/not-concurrently-people',
    method: 'get',
    params: data
  })
}


/**
 * 项目提交审批
 * @param data
 */
export function projectsAudit(data) {
  return request({
    url: projectApiUrl + '/projects/confirm-audit',
    method: 'post',
    data: data
  })
}

/**
 * 项目开工提交审批
 * @param data
 */
export function projectsStarts(data) {
  return request({
    url: projectApiUrl + '/projects/project-starts',
    method: 'post',
    data: data
  })
}

/**
 * 获取人员基础信息列表
 * @param parameter
 */
export function getPersonList(parameter) {
  return request({
    url: projectApiUrl + '/project/basic-personnel',
    method: 'get',
    params: parameter
  })
}

/**
 * 人员基础信息详情
 * @param parameter
 */
export function getPersonDetail(params) {
  return request({
    url: projectApiUrl + '/project/basic-personnel/detail',
    method: 'get',
    params
  })
}

/**
 * 添加人员基础信息
 * @param parameter
 */
export function addPerson(data) {
  return request({
    url: projectApiUrl + '/project/basic-personnel',
    method: 'post',
    data
  })
}

/**
 * 编辑人员基础信息
 * @param parameter
 */
export function editPerson(data) {
  return request({
    url: projectApiUrl + '/project/basic-personnel/update',
    method: 'post',
    data
  })
}

/**
 * 创建证书
 * @param parameter
 */
export function addCertificates(data) {
  return request.post(projectApiUrl + '/project/basic-personnel/certificates', data)
}

/**
 * 更新证书
 * @param parameter
 */
export function editCertificates(data) {
  return request({
    url: projectApiUrl + '/project/basic-personnel/certificates/update',
    method: 'post',
    data
  })
}

/**
 * 获取标签
 * @param parameter
 */
export function getLabel(params) {
  return request({
    url: projectApiUrl + '/project/label',
    method: 'get',
    params
  })
}

/**
 * 获取标签详情
 * @param parameter
 */
export function getLabelDetail(params) {
  return request({
    url: projectApiUrl + '/project/label/detail',
    method: 'get',
    params
  })
}

/**
 * 添加标签
 * @param parameter
 */
export function addLabel(data) {
  return request({
    url: projectApiUrl + '/project/label',
    method: 'post',
    data
  })
}

/**
 * 编辑标签
 * @param parameter
 */
export function editLabel(data) {
  return request({
    url: projectApiUrl + '/project/label/update',
    method: 'post',
    data
  })
}

/**
 * 分包商进出场台账人员管理 
 * @param parameter
 */
export function getSub(params) {
  return request.get(projectApiUrl + '/project/sub', { params })
}

/**
 * 创建分包商管理人员 
 * @param parameter
 */
export function addSubManager(data) {
  return request.post(projectApiUrl + '/project/sub-manager', data)
}

/**
 * 更新分包商管理人员 
 * @param parameter
 */
export function editSubManager(data) {
  return request({
    url: projectApiUrl + '/project/sub-manager/update',
    method: 'post',
    data
  })
}

/**
 * 移除分包商管理人员 
 * @param parameter
 */
export function removeSubManager(data) {
  return request.post(projectApiUrl + '/project/sub-manager/del', data)
}

/**
 * 管理人员详情
 * @param parameter
 */
export function getSubManage(params) {
  return request.get(projectApiUrl + '/project/sub-manager/detail', { params })
}

/**
 * 班组详情
 * @param parameter
 */
export function getSubTeam(params) {
  return request.get(projectApiUrl + '/project/sub-team/detail', { params })
}

/**
 * 创建班组 
 * @param parameter
 */
export function addSubTeam(data) {
  return request.post(projectApiUrl + '/project/sub-team', data)
}

/**
 * 编辑班组 
 * @param parameter
 */
export function editSubTeam(data) {
  return request({
    url: projectApiUrl + '/project/sub-team/update',
    method: 'post',
    data
  })
}

/**
 * 设置班组长  
 * @param parameter
 */
export function setSubTeamLeader(data) {
  return request.post(projectApiUrl + '/project/sub-team/leader', data)
}

/**
 * 添加组员
 * @param parameter
 */
export function addSubTeamMem(data) {
  return request.post(projectApiUrl + '/project/sub-team/mem', data)
}

/**
 * 编辑组员
 * @param parameter
 */
export function editSubTeamMem(data) {
  return request({
    url: projectApiUrl + '/project/sub-team/mem/update',
    method: 'post',
    data
  })
}

/**
 * 导出
 * @param parameter
 */
export function exportExcels(data) {
  return request({
    url: projectApiUrl + '/projects/project-export-excel',
    method: 'post',
    data
  })
}

/**
 * 导出历史项目
 * @param parameter
 */
export function exportHistoryExcels(data) {
  return request({
    url: projectApiUrl + '/projects/history/project-export-excel',
    method: 'get',
    params: data
  })
}

/**
 * 导出历史项目
 * @param parameter
 */
export function getdownProject(data) {
  return request({
    url: projectApiUrl + '/projects/technology/down-project/' + data,
    method: 'get',
  })
}

/**
 * 删除人员
 * @param parameter
 */
export function delPresons(data) {
  return request({
    url: projectApiUrl + '/project/basic-personnel/delete',
    method: 'post',
    data
  })
}

/**
 * 删除行
 * @param parameter
 */
export function delLines(data) {
  return request({
    url: projectApiUrl + '/plan-label/delete',
    method: 'post',
    data
  })
}

/**
 * 云筑劳务项目列表
 * @param parameter
 */
export function getYzProject(params) {
  return request.post(projectApiUrl + '/project/yun-manager/list', params)
}

/**
 * 云筑劳务项目详情
 * @param parameter
 */
export function getYzProjectDetail(params) {
  return request.get(projectApiUrl + '/project/yun-manager/details', { params })
}

/**
 * 云筑劳务导入
 * @param parameter
 */
export function importYz(data) {
  return request.post(projectApiUrl + '/project/yun-manager/import', data)
}

/**
 * 云筑劳务配置新增
 * @param parameter
 */
export function addYzConfig(data) {
  return request.post(projectApiUrl + '/project/yun-manager', data)
}

/**
 * 云筑劳务配置编辑
 * @param parameter
 */
export function editYzConfig(data) {
  return request({
    url: projectApiUrl + '/project/yun-manager/update',
    method: 'post',
    data
  })
}
/**
 * 云筑劳务项目分包商列表
 * @param parameter
 */
export function getYzSubcontractor(params) {
  return request.get(projectApiUrl + '/project/yun-manager/in-and-out', { params })
}
/**
 * @description: 项目信息修改
 * @param {object} data 接口参数
 * @return {promise}
 */
export function projectUpdate(data) {
  return request({
    url: projectApiUrl + '/projects/projectUpdate',
    method: 'post',
    data
  })
}
/**
 * @description: 获取关联节点
 * @param {object} data 接口参数
 * @return {promise}
 */
export function getKeyNode(data) {
  return request({
    url: projectApiUrl + '/entry-exit-ledger/query-select-node',
    method: 'post',
    data
  })
}
/**
 * @description: 获取关联节点
 * @param {object} data 接口参数
 * @return {promise}
 */
export function relationNode(data) {
  return request({
    url: projectApiUrl + '/entry-exit-ledger/relation-node',
    method: 'post',
    data
  })
}

/**
 * @description: 获取关联节点
 * @param {object} data 接口参数
 * @return {promise}
 */
 export function abbreviations(data) {
  return request({
    url: projectApiUrl + '/projects/abbreviations',
    method: 'get',
    data
  })
}